<?php
include_once '../conexion.php';
$_SESSION['seccion'] = 'rpt_lista_precios';
?>
<?php
include_once '../apps/components/paginador.php'; //paginacion
$paginador = new paginator(15, (isset($_REQUEST['sel_num_pag'])?$_REQUEST['sel_num_pag']:1), ($pag_1 =isset($_REQUEST['prim_pag'])?$_REQUEST['prim_pag']:1));
$selcaja = isset($_POST["caja"]) ? $_POST["caja"] : '0';
$fechainicio = isset ($_REQUEST["txtfechainicio"])?$_REQUEST["txtfechainicio"]:'';
$fechafin = isset ($_REQUEST["txtfechafin"])?$_REQUEST["txtfechafin"]:'';
$rows=0; //paginacion

function listarCajas($selected){
    $sqlstr = "SELECT caja_id, caja_codigo FROM caja  ";
    $sqlstr .= " ORDER BY caja_codigo";
    $row = '';
    $conn = new Conexion();
    $consulta = $conn->retornar($sqlstr);
    $row = '<select name="caja" style="width: 220px">';
    $sel = $selected == 0 ? 'selected = "selected"' : '';
    $row .= ' <option value="0" ' . $sel . '><span style="color:#516770; font-style:oblique; font-weight:bold">--Todas--</span></option>';
    while ($reg = pg_fetch_object($consulta)) {
        $sel = $selected == $reg->caja_id ? 'selected = "selected"' : '';
        $row .= ' <option value="' . $reg->caja_id . '" ' . $sel . '>' . $reg->caja_codigo . '</option>';
    }
    $row .='</select>';
    echo $row;
}

function listarRegs() {
    global $rows, $paginador; //paginacion
    global $selcaja, $selalumno, $fechainicio, $fechafin;
    $oConn = new Conexion();
    $regex_id = '/^[0-9]{1,5}$/';
    $regex = '/^[a-zA-Z][a-zA-Z0-9\_\-\.\s]{0,79}$/';
    $sqlstr = "SELECT c.caja_id, c.caja_codigo, c.caja_fecha_apertura, ".
     "c.caja_fecha_cierre, c.caja_saldo_inicial, mo.mov_id, to_char(mo.mov_fecha,'DD/MM/YYYY') as mov_fecha, cm.cmov_nombre, tm.tmov_nombre, ".
     "SUM(movman_importe) * tm.tmov_id as mov_importe_total, r.resp_nombre ".
     "FROM caja c, movimiento mo, concepto_movimiento cm, tipo_movimiento tm, movimiento_manual mm, responsable r ".
     "WHERE mo.mov_cmov_id = cm.cmov_id AND mo.mov_caja_id = c.caja_id AND tm.tmov_id = cm.cmov_tmov_id ".
     "AND mm.movman_mov_id = mo.mov_id AND mm.movman_resp_id = r.resp_id ";
    $sqlstr .= "AND (c.caja_id = {$selcaja} OR {$selcaja} = 0) ";
    if(trim($fechainicio)!=''){
        $sqlstr .= "AND mo.mov_fecha >= to_date('{$fechainicio}','DD/MM/YYYY') ";
    }
    if(trim($fechafin)!=''){
        $sqlstr .= "AND mo.mov_fecha <= to_date('{$fechafin}','DD/MM/YYYY') ";
    }
     $sqlstr .= "GROUP BY c.caja_id, c.caja_codigo, c.caja_fecha_apertura, c.caja_saldo_inicial, tm.tmov_id, ".
     "c.caja_fecha_cierre, mo.mov_id, mo.mov_fecha, cm.cmov_nombre, tm.tmov_nombre, r.resp_nombre ".
     "UNION ".
    "SELECT c.caja_id, c.caja_codigo, c.caja_fecha_apertura,  ".
     "c.caja_fecha_cierre, c.caja_saldo_inicial, mo.mov_id, to_char(mo.mov_fecha,'DD/MM/YYYY') as mov_fecha, cm.cmov_nombre, tm.tmov_nombre, ".
     "SUM(pcc.pago_importe) * tm.tmov_id as mov_importe_total, a.alum_apellido||' '||a.alum_nombre as alum_nombre ".
     "FROM caja c, movimiento mo, concepto_movimiento cm, tipo_movimiento tm, pago_cuota_curso pcc, inscripcion i, alumno a ".
     "WHERE mo.mov_cmov_id = cm.cmov_id AND mo.mov_caja_id = c.caja_id AND tm.tmov_id = cm.cmov_tmov_id ".
     "AND pcc.pago_mov_id = mo.mov_id AND pcc.pago_insc_id = i.insc_id AND i.insc_alum_id = a.alum_id ";
     
    $sqlstr .= "AND (c.caja_id = {$selcaja} OR {$selcaja} = 0) ";
    if(trim($fechainicio)!=''){
        $sqlstr .= "AND mo.mov_fecha >= to_date('{$fechainicio}','DD/MM/YYYY') ";
    }
    if(trim($fechafin)!=''){
        $sqlstr .= "AND mo.mov_fecha <= to_date('{$fechafin}','DD/MM/YYYY') ";
    }
    $sqlstr .= "GROUP BY c.caja_id, c.caja_codigo, c.caja_fecha_apertura, c.caja_saldo_inicial, tm.tmov_id, ".
               "c.caja_fecha_cierre, mo.mov_id, mo.mov_fecha, cm.cmov_nombre, tm.tmov_nombre, a.alum_apellido, a.alum_nombre ";
    $sqlstr .= "ORDER BY caja_codigo, mov_fecha DESC;";
    //echo $sqlstr;
    $row = '<table class="flat"><tbody>';
    $consulta = $oConn->retornar($sqlstr);
    $rows = pg_num_rows($consulta);
    $num_r = 1; //paginacion
    $subtotal = 0.00;
    $prev = '';
    while ($reg = pg_fetch_object($consulta)) {
        if($paginador->showReg($num_r)){//paginacion
            if($reg->caja_codigo != $prev || $prev == ''){
                if($num_r > 1){
                    $row .= '<tr style="background-color:#E6E6E6; color:blue;"><td colspan="2"></td><td></td><td class="typeNum">'.numToShowValue($subtotal).'</td><tr>';
                }
                $subtotal = 0.00;
                $row .= '<tr><td class="banner" colspan="4"><span style="text-decoration:underline;font-weight:normal;">Caja:</span>: '.strToShowValue($reg->caja_codigo).' [Apertura: '.$reg->caja_fecha_apertura.'] [Cierre: '.$reg->caja_fecha_cierre.'] [Saldo inicial $: '.$reg->caja_saldo_inicial.']</td></tr>'.
                    '<tr><td class="header">Fecha de movimiento</td><td class="header">Concepto</td>'.
                    '<td class="header">Part&iacute;cipe</td><td class="header">Importe $</td></tr>';
            }
            $classRow = $num_r%2==0?'class="altRow"':'';
            $row .= '<tr '.$classRow.'><td class="typeDate">'.$reg->mov_fecha.'</td><td class="typeText">'.strToShowValue($reg->cmov_nombre).'</td>'.                   
                    '<td class="typeText">'.strToShowValue($reg->resp_nombre).'</td>'.
                    '<td class="typeNum">'.$reg->mov_importe_total.'</td>'.
                    '</tr>';
            $prev = $reg->caja_codigo;
            $subtotal += $reg->mov_importe_total;
        }
        if($num_r == $rows){
            $row .= '<tr style="background-color:#E6E6E6; color:blue;"><td colspan="2"></td><td></td><td class="typeNum">'.numToShowValue($subtotal).'</td><tr>';
        }
        $num_r ++; //paginacion
    }
    if ($rows == 0) {
        $row .= '<div class="err_inputs"><ul><li>No hay resultados.</li></ul></div>';
    }

    $row .= '</tbody></table>';
    echo $row;
}
?>

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
        <title>Lista de movimientos</title>
        <link href="../css/doc.css" rel="stylesheet" type="text/css"/>
    </head>
    <body>
        <?php //control de acceso
        if(!isset ($_SESSION['usu_rusu_id_pcb'])){
            echo '<span style="color:red;">No tiene acceso a esta pantalla.</span>'.
                '</body>';
            die;            
        }
        ?>
        <table class="pageTitle" width="100%">
            <tbody>
                <tr>
                    <td class="title_nm">Lista de movimientos</td><td class="watermark_right">&nbsp;</td>
                </tr>
            </tbody>
        </table>
        <hr/>
        <form name="form_search" id="form_search" method="post" action="">
            <?php //paginacion
                echo $paginador->getHiddensInForm();
            ?>
            <table>
                <tr>
                    <td>Cajas:</td><td>
                        <?php listarCajas($selcaja) ?>
                    </td>
                    <td rowspan="2"><button type="submit" title="Buscar"><img src="../images/buscar.gif" width="28" height="30" alt="Buscar"/></button></td>
                </tr>
                <tr>
                    <td>Fecha de inicio:</td>
                    <td>
                        <?php
                        include_once '../apps/complements/date_picker/date_picker.php';
                        getDatePicker('../apps/complements/date_picker/', 'txtfechainicio');
                        ?>
                        <script type="text/javascript">
                            document.getElementById('txtfechainicio').value='<?php echo isset ($_REQUEST["txtfechainicio"])?$_REQUEST["txtfechainicio"]:''?>';                                                    
                        </script>
                    </td>
                </tr>
                <tr>
                    <td>Fecha de fin:</td>
                    <td>
                        <?php
                        include_once '../apps/complements/date_picker/date_picker.php';
                        getDatePicker('../apps/complements/date_picker/', 'txtfechafin');
                        ?>
                        <script type="text/javascript">
                            document.getElementById('txtfechafin').value='<?php echo isset ($_REQUEST["txtfechafin"])?$_REQUEST["txtfechafin"]:''?>';                                                    
                        </script>
                    </td>
                </tr>
            </table>
        </form>
        <br/>      
        <?php
            listarRegs()
        ?>
        <br/>
        <table style="width: 100%"><tr><td align="center">
            <?php //paginacion
            echo $paginador->getPaginator($rows, '../apps/components/', 'form_search');
            ?>
        </td></tr></table>
    </body>
</html>
